package com.fh.fruit.service.basearea;

import java.util.List;

import com.fh.entity.Page;
import com.fh.fruit.entity.basearea.BaseArea;
import com.fh.util.PageData;
/**
 * 区域Manager
 * @author Administrator
 * @version 2017.11.30 15:39
 */
public interface BaseAreaManager {
	/**
	 * 区域列表
	 * @param page page
	 * @return 区域列表
	 * @throws Exception Exception
	 */
	List<BaseArea> listBaseAreas(Page page) throws Exception;
	/**
	 * 新增区域
	 * @param pd pd
	 * @return
	 * @throws Exception Exception
	 */
	void saveBaseAreas(PageData pd) throws Exception;
	/**
	 * 删除区域
	 * @param pd pd
	 * @return 记录数
	 * @throws Exception Exception
	 */
	int deleteBaseAreas(PageData pd) throws Exception;
	
	/**
	 * 编辑区域
	 * @param pd pd
	 * @return 记录数
	 * @throws Exception Exception
	 */
	int updateBaseAreas(PageData pd) throws Exception;
	/**
	 * 通过id查询区域
	 * @param pd pd
	 * @return 区域
	 * @throws Exception Exception
	 */
	BaseArea findById(PageData pd) throws Exception;
	/**
	 * 通过区域名称或者编码查询
	 * @param pd pd
	 * @return 区域信息
	 * @throws Exception Exception
	 */
	List<PageData> findByNameOrCode(PageData pd) throws Exception;
	/**
	 * 根据基地id,统计区域数量
	 * @param pd pd
	 * @return 区域数量
	 * @throws Exception Exception
	 */
	int selectTotalBaseArea(PageData pd) throws Exception;
	/**
	 * 根据基地id查询种植区域
	 * @param parseInt 基地id
	 * @return 种植区域
	 * @throws Exception Exception
	 */
	List<PageData> synTree(int parseInt) throws Exception;
	
}
